﻿using BCCommon.Enums;
using BCCommon.PaymentEnums;

namespace BCService.Common.Payment.PaymentCallbackRecord
{
    /// <summary>
    /// 公共支付回调记录服务接口
    /// </summary>
    public interface ICommonPaymentCallbackRecordService
    {
        /// <summary>
        /// 添加支付回调记录
        /// </summary>
        /// <param name="payChannelType">支付渠道类型</param>
        /// <param name="UserId">用户Id</param>
        /// <param name="dataParameters">请求参数</param>
        /// <returns></returns>
        long Add(PaymentChannelType payChannelType, long UserId, string dataParameters);

        /// <summary>
        /// 添加代理商回调记录
        /// </summary>
        /// <param name="payChannelType">支付渠道类型</param>
        /// <param name="adminId">adminId</param>
        /// <param name="dataParameters">请求参数</param>
        /// <returns></returns>
        long AgentAdd(PaymentChannelType payChannelType, long adminId, string dataParameters);
        /// <summary>
        /// 更新支付回调记录状态
        /// </summary>
        /// <param name="paymentCallbackRecordId">支付回调记录Id</param>
        /// <returns></returns>
        bool UpdateStatus(long paymentCallbackRecordId);

        /// <summary>
        /// 更新备注内容
        /// </summary>
        /// <param name="paymentCallbackRecordId">支付回调记录Id</param>
        /// <param name="remakeContent">备注内容</param>
        /// <returns></returns>
        bool UpdateRemakeContent(long paymentCallbackRecordId, string remakeContent);
    }
}
